package rpcx_label_center

import (
	"time"
)

// 基础

// 请求 创建
type ReqCreateBaseServer struct {
	ServerId  string `json:"ServerId"`
	Name      string `json:"Name"`             //名称
	Http      string `json:"Http"`             //
	WebSocket string `json:"WebSocket"`        //
	Remark    string `json:"Remark,omitempty"` //名称首拼字母，为空时系统自动生成
}

// 请求 删除
type ReqDeleteBaseServer struct {
	ServerId string `json:"ServerId"` //Id
}

// 请求 更新
type ReqUpdateBaseServer struct {
	ServerId  string `json:"ServerId"`         //Id
	Name      string `json:"Name"`             //名称
	Remark    string `json:"Remark,omitempty"` //名称首拼字母，为空时系统自动生成
	Http      string `json:"Http"`             //
	WebSocket string `json:"WebSocket"`        //
}

// 请求 搜索查询
type ReqSearchBaseServer struct {
	KeyWord     string   `json:"KeyWord,omitempty"`     //全局关键词
	ServerId    string   `json:"ServerId"`              //中心ID
	Name        string   `json:"Name"`                  //
	Remark      string   `json:"Remark"`                //备注
	Page        int64    `json:"Page"`                  //必填 指定返回页码号
	Limit       int64    `json:"Limit"`                 //必填 指定返回每页条数
	FieldOrders []string `json:"FieldOrders,omitempty"` //指定要排序的字段数组，默认升序，降序加前缀-，如 ["-Id", "Name"] 按Id降序Name升序排列
}

// 响应 单一对象
type RespBaseServer struct {
	ServerId  string `json:"ServerId"`  //中心ID
	Name      string `json:"Name"`      //
	Http      string `json:"Http"`      //
	WebSocket string `json:"WebSocket"` //
	Remark    string `json:"Remark"`    //备注

	TimeCreate time.Time `json:"TimeCreate"` //记录创建时间
	TimeUpdate time.Time `json:"TimeUpdate"` //最后修改时间
}

// 响应 查询列表
type RespBaseServers struct {
	Total       int64            `json:"Total"`       //返回列表的总条数
	BaseServers []RespBaseServer `json:"BaseServers"` //返回列表对象
}
